#ifndef __GfxDriver_WGL_WGLHelper_h__
#define __GfxDriver_WGL_WGLHelper_h__

#include "GfxDriver/PixelFormat.h"
#include "GfxDriver/PrimitiveType.h"
#include "GfxDriver/IndexType.h"
#include "GfxDriver/DriverState.h"
#include "GfxDriver/VertexElement.h"

#include "GfxDriver/WGL/GLInclude.h"

namespace Orca {

	//--------------------------------------------------------------------------
	class WGLHelper {

		WGLHelper() {}
		~WGLHelper() {}

	public:
		static GLenum getGLPrimitiveType(PrimitiveType primType);

		static GLsizei getPrimitiveVertexCnt(
			  PrimitiveType primType
			, uint32 primCnt);

		static uint32 getBytePerPixel(PixelFormat format);

		static void getGLPixelFormat(
			  PixelFormat format
			, GLint &internalFormat
			, GLenum &srcFormat
			, GLenum &srcDataType);

		static GLenum getGLCmpFunc(CmpFunc cmp);

		static GLenum getGLBlendFactor(BlendFactor factor);
	};
}

#endif	// __GfxDriver_WGL_WGLHelper_h__